namespace Trader.Trading.Interface
{
    using System;
    using System.Collections.Generic;

    public interface IPortfolio
    {
        IList<IPortfolioMember> PortfolioMembers { get; }
        IPortfolioState this[DateTime date] { get; }

        //void Sell(IPortfolioMember member, DateTime currentTradingDay);
        void RearrangeUsingRecomendations(IList<IRecommendation> recomendations, DateTime currentTradingDate);
//        void PrintToFile(StreamWriter textWriter);
        void UpdateUnits(DateTime date);
        void Sell(IEnumerable<IPortfolioMember> membersToSell, DateTime date);
        void SellAll(DateTime date);
    }
}